home *** CD-ROM | disk | FTP | other *** search
- /*****************************************************************************
- *
- * name : notify.c
- * description : handle the notify intuition library
- * version : 1.2
- *
- * created : ?
- * last change : 9-3-98
- *
- *****************************************************************************
- */
- #include <libraries/notifyintuition.h>
- #include <exec/memory.h>
-
- #include <proto/exec.h>
- #include <string.h>
- #include <stdio.h>
- #include "utils.h"
-
-
- #define SCREEN "Workbench#?"
-
- int startNotify(idWin * prj) {
- /* initialise notification
- */
- int ret = FALSE ;
- if ((prj->Notify->inr_Name = AllocVec(sizeof(SCREEN), MEMF_PUBLIC)) != NULL) {
- if ((prj->notifyPort = CreateMsgPort()) != NULL) {
- strcpy(prj->Notify->inr_Name, SCREEN) ;
- prj->Notify->inr_Flags = INRF_SEND_MESSAGE|INRF_WAIT_REPLY|INRF_BEFORE_CLOSEWORKBENCH|INRF_AFTER_OPENWORKBENCH ;
- prj->Notify->inr_stuff.inr_Msg.inr_Port = prj->notifyPort ;
- prj->Notify->inr_Pri = 101 ;
- prj->Notify->inr_UniqueID = 'MYCL' ;
- NotIStartNotify(prj->Notify) ;
- ret = TRUE ;
- }
- }
- return(ret) ;
- }
-
- void endNotify(idWin * prj) {
- /* terminate notifiaction
- */
- if (prj->Notify) NotIEndNotify(prj->Notify) ;
- if (prj->notifyPort) DeleteMsgPort(prj->notifyPort) ;
- if (prj->Notify->inr_Name) FreeVec(prj->Notify->inr_Name) ;
- }